|
In signal processing, a causal filter is a linear and time-invariant causal system. The word ''causal'' indicates that the filter output depends only on past and present inputs. A filter whose output also depends on future inputs is non-causal, whereas a filter whose output depends ''only'' on future inputs is anti-causal. Systems (including filters) that are ''realizable'' (i.e. that operate in real time) must be causal because such systems cannot act on a future input. In effect that means the output sample that best represents the input at time comes out slightly later. A common design practice for digital filters is to create a realizable filter by shortening and/or time-shifting a non-causal impulse response. If shortening is necessary, it is often accomplished as the product of the impulse-response with a window function. An example of an anti-causal filter is a maximum phase filter, which can be defined as a stable, anti-causal filter whose inverse is also stable and anti-causal. ==Example== The following definition is a moving (or "sliding") average of input data . A constant factor of 1/2 is omitted for simplicity: : where ''x'' could represent a spatial coordinate, as in image processing. But if represents time , then a moving average defined that way is non-causal (also called ''non-realizable''), because depends on future inputs, such as . A realizable output is : which is a delayed version of the non-realizable output. Any linear filter (such as a moving average) can be characterized by a function ''h''(''t'') called its impulse response. Its output is the convolution : In those terms, causality requires : and general equality of these two expressions requires ''h''(''t'') = 0 for all ''t'' < 0. 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「causal filter」の詳細全文を読む スポンサード リンク
|